package com.java.demo.component;

import com.java.demo.entity.User;
import org.springframework.context.annotation.Bean;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;

/**
 * 该类存储了多个类的注解
 */
//  @Bean 注解必须要配合五大类注解一起使用
@Component
@Order(20) // 控制注入的顺序：注入的int值越大，顺序越早
public class UserBeans {
    // 方法注解，将方法的返回值存储到 Spring 当中
    // Bean 命名规则和五大类注解的命名规则不同，默认情况下， @Bean存储的是 对象的名称 = 方法名
    @Bean(name = {"user1", "u1"}) // 重命名
    public User getUserById() {
        User user = new User();
        user.setUid(1);
        user.setUsername("zhangsan");
        user.setPassword("123");
        user.setAge(18);
        return user;
    }
    @Bean
    public User getUserByName() {
        User user = new User();
        user.setUid(2);
        user.setUsername("lisi");
        user.setPassword("123");
        user.setAge(18);
        return user;
    }
}
